Aller au contenu principal

Exercice 04

Exercice 04: Vérifier si un nombre est négatif

Votre quatrième tâche consiste à écrire une fonction C appelée my_isneg qui affiche soit 'N' si l'entier passé en paramètre est négatif, soit 'P' s'il est positif ou nul.
Cependant, il y a un twist : vous ne pouvez utiliser que la fonction my_putchar pour afficher les caractères. La fonction my_putchar prend un seul caractère en entrée et l'affiche.

#include <unistd.h>

void my_putchar(char c)
{
write(1, &c, 1);
}

Résultat Attendu:

N (si l'entrée est négative)
P (si l'entrée est positive ou nulle)

Indices

Avant de plonger dans la solution, voici quelques indices pour vous aider à aborder le problème :

  • Comprenez les instructions conditionnelles de base en C.
  • Pensez à utiliser une instruction if-else pour vérifier la valeur de l'entier.
  • Utilisez la fonction my_putchar fournie pour afficher le caractère correspondant.

Ces indices devraient vous donner un bon point de départ pour travailler sur l'exercice. Bonne chance !

Solution
#include <unistd.h>

void my_putchar(char c)
{
write(1, &c, 1);
}

/*
* Cette fonction, my_isneg, affiche 'N' si l'entier n
* est négatif, ou 'P' s'il est positif ou nul.
* Elle utilise la fonction my_putchar pour afficher les caractères.
*/
int my_isneg(int n) {
if (n < 0) {
my_putchar('N');
} else {
my_putchar('P');
}

// Retourner 0 pour indiquer une exécution réussie
return 0;
}

Explication :

  • Dans cette solution, nous utilisons une instruction if-else pour vérifier si l'entier n est négatif.
  • Si n est inférieur à 0, nous affichons 'N' en utilisant la fonction my_putchar.
  • Sinon, nous affichons 'P' en utilisant la fonction my_putchar.
  • Cela garantit que le bon caractère est affiché en fonction de la valeur de l'entier n.

Et voilà, vous avez complété votre quatrième exercice en programmation C !